EGCL: An Extended G-Code Language with Flow Control, Functions and Mnemonic Variables
نویسندگان
چکیده
In the context of computer numerical control (CNC) and computer aided manufacturing (CAM), the capabilities of programming languages such as symbolic and intuitive programming, program portability and geometrical portfolio have special importance. They allow to save time and to avoid errors during part programming and permit code re-usage. Our updated literature review indicates that the current state of art presents voids in parametric programming, program portability and programming flexibility. In response to this situation, this article presents a compiler implementation for EGCL (Extended G-code Language), a new, enriched CNC programming language which allows the use of descriptive variable names, geometrical functions and flow-control statements (if-then-else, while). Our compiler produces low-level generic, elementary ISO-compliant Gcode, thus allowing for flexibility in the choice of the executing CNC machine and in portability. Our results show that readable variable names and flow control statements allow a simplified and intuitive part programming and permit re-usage of the programs. Future work includes allowing the programmer to define own functions in terms of EGCL, in contrast to the current status of having them as library built-in functions. Keywords—CNC Programming, Compiler, G-code Language, Numerically Controlled Machine-Tools.
منابع مشابه
Individuality in Higher Education: The Use of the Multiple-Mnemonic Method to Enhance ESP Students' Vocabulary Development (Depth and Size) and Retention
Vocabulary learning is considered to be the most comprehensive and the most difficult part of language learning for all the students especially for ESP students. These students complain that vocabulary items are too many and are easily forgotten after they are learned. Mnemonic devices, a group of mental strategies, are developed to facilitate vocabulary learning and retention for such students...
متن کاملFunctions of Code-Switching Strategies among Iranian EFL Learners and Their Speaking Ability Improvement through Code-Switching
This study investigated the impact of code-switching on speaking ability of Iranian low proficiency EFL learners. Moreover, it was an attempt to show what functions existed behind code-switching strategies used by the EFL learners. To this end, 60 male and female Iranian EFL learners age-ranged between 20 and 30 participated in the study. Data collection instruments which were used were the Int...
متن کاملThe Impact of Code-Switching on Bilingual EFL Learners’ Reading Comprehension
This study sought to investigate the probable effects of code-switching (CS) on Iranian bilingual English learners' reading comprehension. In this study, two intact classes of freshmen, taking the four-credit Reading and Comprehension Course 1, comprising a total of 70 participants, with 35 in each class, were randomly assigned as the experimental and the control groups after their initial homo...
متن کاملFunctions of Code-Switching Strategies among Iranian EFL Learners and Their Speaking Ability Improvement through Code-Switching
This study investigated the impact of code-switching on speaking ability of Iranian low proficiency EFL learners. Moreover, it was an attempt to show what functions existed behind code-switching strategies used by the EFL learners. To this end, 60 male and female Iranian EFL learners age-ranged between 20 and 30 participated in the study. Data collection instruments which were used were the Int...
متن کاملPractical Inlining of Functions with Free Variables
A long-standing practical challenge in the optimization of higherorder languages is inlining functions with free variables. Inlining code statically at a function call site is safe if the compiler can guarantee that the free variables have the same bindings at the inlining point as they do at the point where the function is bound as a closure (code and free variables). There have been many atte...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 2012